package com.moyu.article.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.moyu.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.util.Date;

/**
 * 文章实体类
 *
 * @Author 赵彦博
 * @Date 2025/1/6 9:55
 */
@Data
@ToString
@EqualsAndHashCode
@TableName("tb_article")
public class Article extends BaseEntity {

    /**
     * 文章主键
     */
    @JsonSerialize(using = ToStringSerializer.class) // Json序列化的过程中把Long自动转换成String
    @TableId(type = IdType.ASSIGN_ID) // 雪花算法
    private Long id;

    /**
     * 标签ID
     */
    private Long boardId;

    /**
     * 所属人ID
     */
    private Long userId;

    /**
     * 文章标题
     */
    private String title;

    /**
     * 文章内容
     */
    private String content;

    /**
     * 访问量
     */
    private Integer visitCount;

    /**
     * 回复量
     */
    private Integer replyCount;

    /**
     * 点赞量
     */
    private Integer likeCount;

    /**
     * 状态，0正常，1禁用
     */
    private Byte state;

    /**
     * 是否删除，0否，1是
     */
    private Byte deleteState;
}
